package com.mintingi.pattern.adapter;

/**
 * 클라이언트가 사용하고자 하는 다른 인터페이스로 변환 한다.
 *  
 * @author mintingi
 *
 */
public class Adapter implements Target {

	/**
	 * 클라이언터가 사용하고자 하는 인터페이스
	 */
	private OtherTarget otherTarget;
	
	/**
	 * 다양성을 활용하기 위해 생성시 의존성 주입(Dependency Injection, DI)
	 * 
	 * @param otherTarget
	 */
	public Adapter(OtherTarget otherTarget) {
		this.otherTarget = otherTarget;
	}
	
	@Override
	public void request() {
		// 변환 작업 구현
		otherTarget.specificRequest();
	}

}
